
using System;

namespace NuevoGenNHibernate.EN.Ebay
{
public class VentaEN
{
/**
 *
 */

private int id_venta;

/**
 *
 */

private bool finalizado;

/**
 *
 */

private NuevoGenNHibernate.Enumerated.Ebay.TipoDePagoEnum formaDePago;

/**
 *
 */

private Nullable<DateTime> fecha;

/**
 *
 */

private string nombre;

/**
 *
 */

private string descripcion;

/**
 *
 */

private float precioFinal;

/**
 *
 */

private float gastosEnvio;

/**
 *
 */

private NuevoGenNHibernate.EN.Ebay.UsuarioEN vendedor;

/**
 *
 */

private NuevoGenNHibernate.EN.Ebay.UsuarioEN comprador;

/**
 *
 */

private NuevoGenNHibernate.EN.Ebay.UsuarioEN usuario;

/**
 *
 */

private NuevoGenNHibernate.EN.Ebay.PagoEN pago;

/**
 *
 */

private System.Collections.Generic.IList<NuevoGenNHibernate.EN.Ebay.VotacionEN> votacion;

/**
 *
 */

private System.Collections.Generic.IList<NuevoGenNHibernate.EN.Ebay.LineaVentaEN> lineaVenta;





public virtual int Id_venta {
        get { return id_venta; } set { id_venta = value;  }
}


public virtual bool Finalizado {
        get { return finalizado; } set { finalizado = value;  }
}


public virtual NuevoGenNHibernate.Enumerated.Ebay.TipoDePagoEnum FormaDePago {
        get { return formaDePago; } set { formaDePago = value;  }
}


public virtual Nullable<DateTime> Fecha {
        get { return fecha; } set { fecha = value;  }
}


public virtual string Nombre {
        get { return nombre; } set { nombre = value;  }
}


public virtual string Descripcion {
        get { return descripcion; } set { descripcion = value;  }
}


public virtual float PrecioFinal {
        get { return precioFinal; } set { precioFinal = value;  }
}


public virtual float GastosEnvio {
        get { return gastosEnvio; } set { gastosEnvio = value;  }
}


public virtual NuevoGenNHibernate.EN.Ebay.UsuarioEN Vendedor {
        get { return vendedor; } set { vendedor = value;  }
}


public virtual NuevoGenNHibernate.EN.Ebay.UsuarioEN Comprador {
        get { return comprador; } set { comprador = value;  }
}


public virtual NuevoGenNHibernate.EN.Ebay.UsuarioEN Usuario {
        get { return usuario; } set { usuario = value;  }
}


public virtual NuevoGenNHibernate.EN.Ebay.PagoEN Pago {
        get { return pago; } set { pago = value;  }
}


public virtual System.Collections.Generic.IList<NuevoGenNHibernate.EN.Ebay.VotacionEN> Votacion {
        get { return votacion; } set { votacion = value;  }
}


public virtual System.Collections.Generic.IList<NuevoGenNHibernate.EN.Ebay.LineaVentaEN> LineaVenta {
        get { return lineaVenta; } set { lineaVenta = value;  }
}





public VentaEN()
{
        votacion = new System.Collections.Generic.List<NuevoGenNHibernate.EN.Ebay.VotacionEN>();
        lineaVenta = new System.Collections.Generic.List<NuevoGenNHibernate.EN.Ebay.LineaVentaEN>();
}



public VentaEN(int id_venta, bool finalizado, NuevoGenNHibernate.Enumerated.Ebay.TipoDePagoEnum formaDePago, Nullable<DateTime> fecha, string nombre, string descripcion, float precioFinal, float gastosEnvio, NuevoGenNHibernate.EN.Ebay.UsuarioEN vendedor, NuevoGenNHibernate.EN.Ebay.UsuarioEN comprador, NuevoGenNHibernate.EN.Ebay.UsuarioEN usuario, NuevoGenNHibernate.EN.Ebay.PagoEN pago, System.Collections.Generic.IList<NuevoGenNHibernate.EN.Ebay.VotacionEN> votacion, System.Collections.Generic.IList<NuevoGenNHibernate.EN.Ebay.LineaVentaEN> lineaVenta)
{
        this.init (id_venta, finalizado, formaDePago, fecha, nombre, descripcion, precioFinal, gastosEnvio, vendedor, comprador, usuario, pago, votacion, lineaVenta);
}


public VentaEN(VentaEN venta)
{
        this.init (venta.Id_venta, venta.Finalizado, venta.FormaDePago, venta.Fecha, venta.Nombre, venta.Descripcion, venta.PrecioFinal, venta.GastosEnvio, venta.Vendedor, venta.Comprador, venta.Usuario, venta.Pago, venta.Votacion, venta.LineaVenta);
}

private void init (int id_venta, bool finalizado, NuevoGenNHibernate.Enumerated.Ebay.TipoDePagoEnum formaDePago, Nullable<DateTime> fecha, string nombre, string descripcion, float precioFinal, float gastosEnvio, NuevoGenNHibernate.EN.Ebay.UsuarioEN vendedor, NuevoGenNHibernate.EN.Ebay.UsuarioEN comprador, NuevoGenNHibernate.EN.Ebay.UsuarioEN usuario, NuevoGenNHibernate.EN.Ebay.PagoEN pago, System.Collections.Generic.IList<NuevoGenNHibernate.EN.Ebay.VotacionEN> votacion, System.Collections.Generic.IList<NuevoGenNHibernate.EN.Ebay.LineaVentaEN> lineaVenta)
{
        this.Id_venta = id_venta;


        this.Finalizado = finalizado;

        this.FormaDePago = formaDePago;

        this.Fecha = fecha;

        this.Nombre = nombre;

        this.Descripcion = descripcion;

        this.PrecioFinal = precioFinal;

        this.GastosEnvio = gastosEnvio;

        this.Vendedor = vendedor;

        this.Comprador = comprador;

        this.Usuario = usuario;

        this.Pago = pago;

        this.Votacion = votacion;

        this.LineaVenta = lineaVenta;
}

public override bool Equals (object obj)
{
        if (obj == null)
                return false;
        VentaEN t = obj as VentaEN;
        if (t == null)
                return false;
        if (Id_venta.Equals (t.Id_venta))
                return true;
        else
                return false;
}

public override int GetHashCode ()
{
        int hash = 13;

        hash += (null == Id_venta ? 0 : this.Id_venta.GetHashCode ());
        return hash;
}
}
}
